package doit20.datayi.utils

import org.roaringbitmap.RoaringBitmap

/**
 * @author 涛哥
 * @nick_name "deep as the sea"
 * @contact qq:657270652 wx:doit_edu
 * @site www.doitedu.cn
 * @date 2021-04-18
 * @desc roaringbitmap测试demo
 */
object RoaringBitmapDemo {
  def main(args: Array[String]): Unit = {

    // 闵行区出现的guid：  1  3   5  6
    // 浦东区出现的guid：2  5  6

    val bitmap1 = RoaringBitmap.bitmapOf(1, 3, 5, 6)
    val bitmap2 = RoaringBitmap.bitmapOf(2, 5)
    bitmap2.add(6)

    // 求上海市出现的guid（人数）
    bitmap1.or(bitmap2)

    println(bitmap1.contains(6))
    println(bitmap1.getCardinality)


    val bitmap3 = RoaringBitmap.bitmapOf()
    bitmap3.add(10)
    bitmap3.add(10000)

    val array = bitmap3.toArray
    array.foreach(println)
    println(array.size)

  }
}
